/**
 * @Copyright:Copyright (c) 1992 - 2016
 * @Company: TengTong
 */

package com.tengtong.duang.db.repository;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;

import com.tengtong.duang.db.dbutil.DBUtils;

/**
 * 实现基础的数据处理方法
 * 
 * @author Jai
 *
 */
public abstract class BaseRepository {

	/**
	 * 执行一条查询语句，为 返回外部的 Entity 数据提供方便。注意，Entity 不一定要继承自 BaseModel
	 * 
	 * 例如，我们可以使用 JOIN 来得到定制的数据列表
	 *
	 * @param sql
	 * @param objects         sql 中的查询数据
	 * @throws SQLException
	 */
	protected <T> List<T> query(Class<T> entityClass, String sql, Object...objects) throws SQLException{
		return (List<T>) DBUtils.queryList(entityClass, getConnection(), sql, objects);
	}

	/**
	 * @return
	 */
	protected Connection getConnection() {
		return null;
	}
	
}
